$(function(){
	$(":button,:reset,:submit").addClass("ui-button ui-state-default ui-corner-all").hover(function(){
        $(this).addClass("ui-state-hover");
    }, function(){
        $(this).removeClass("ui-state-hover");
    }).mousedown(function(){
        $(this).addClass("ui-state-active");
    }).mouseup(function(){
    });
});
function CalConv()
 {
	FIRSTYEAR = 1998;
	LASTYEAR = 2031;
	today = new Date();
	SolarYear = today.getFullYear();
	SolarMonth = today.getMonth() + 1;
	SolarDate = today.getDate();
	Weekday = today.getDay();
	LunarCal = [
  new tagLunarCal( 27,  5, 3, 43, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1 ),
  new tagLunarCal( 46,  0, 4, 48, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1 ), /* 88 */
  new tagLunarCal( 35,  0, 5, 53, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1 ), /* 89 */
  new tagLunarCal( 23,  4, 0, 59, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1 ),
  new tagLunarCal( 42,  0, 1,  4, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1 ),
  new tagLunarCal( 31,  0, 2,  9, 1, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0 ),
  new tagLunarCal( 21,  2, 3, 14, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1 ), /* 93 */
  new tagLunarCal( 39,  0, 5, 20, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1 ),
  new tagLunarCal( 28,  7, 6, 25, 1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1 ),
  new tagLunarCal( 48,  0, 0, 30, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 1 ),
  new tagLunarCal( 37,  0, 1, 35, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1 ), /* 97 */
  new tagLunarCal( 25,  5, 3, 41, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1 ),
  new tagLunarCal( 44,  0, 4, 46, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1 ),
  new tagLunarCal( 33,  0, 5, 51, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1 ),
  new tagLunarCal( 22,  4, 6, 56, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0 ), /* 101 */
  new tagLunarCal( 40,  0, 1,  2, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0 ),
  new tagLunarCal( 30,  9, 2,  7, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1 ),
  new tagLunarCal( 49,  0, 3, 12, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 1 ),
  new tagLunarCal( 38,  0, 4, 17, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0 ), /* 105 */
  new tagLunarCal( 27,  6, 6, 23, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1 ),
  new tagLunarCal( 46,  0, 0, 28, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 0 ),
  new tagLunarCal( 35,  0, 1, 33, 0, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0 ),
  new tagLunarCal( 24,  4, 2, 38, 0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1 ), /* 109 */
  new tagLunarCal( 42,  0, 4, 44, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1 ),
  new tagLunarCal( 31,  0, 5, 49, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0 ),
  new tagLunarCal( 21,  2, 6, 54, 0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1 ),
  new tagLunarCal( 40,  0, 0, 59, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1 ), /* 113 */
  new tagLunarCal( 28,  6, 2,  5, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0 ),
  new tagLunarCal( 47,  0, 3, 10, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 1, 0, 1 ),
  new tagLunarCal( 36,  0, 4, 15, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1 ),
  new tagLunarCal( 25,  5, 5, 20, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0 ), /* 117 */
  new tagLunarCal( 43,  0, 0, 26, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1 ),
  new tagLunarCal( 32,  0, 1, 31, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0 ),
  new tagLunarCal( 22,  3, 2, 36, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0 ) ];
  var monthCH =["正月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"];
  var monthsCH =["闰正月","闰二月","闰三月","闰四月","闰五月","闰六月","闰七月","闰八月","闰九月","闰十月","闰十一月","闰十二月"];
  var dayCH = ["初一","初二","初三","初四","初五","初六","初七","初八","初九","初十","十一","十二","十三","十四","十五","十六","十七","十八","十九","二十","廿一","廿二","廿三","廿四","廿五","廿六","廿七","廿八","廿九","三十"];

 /* 民國年每月之日數 */
 SolarCal = [ 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 ];
 /* 民國年每月之累積日數, 平年與閏年 */
SolarDays = [  0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334, 365, 396,  0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335, 366, 397 ];
	if ( SolarYear <= FIRSTYEAR || SolarYear > LASTYEAR ) return 1;
	sm = SolarMonth - 1;
		if ( sm < 0 || sm > 11 ) return 2;
		leap = GetLeap( SolarYear );
	if ( sm == 1 )
		d = leap + 28;
	else
		d = SolarCal[sm];
	if ( SolarDate < 1 || SolarDate > d ) return 3;
	y = SolarYear - FIRSTYEAR;
	acc = SolarDays[ leap*14 + sm ] + SolarDate;
	kc = acc + LunarCal[y].BaseKanChih;
	Kan = kc % 10;
	Chih = kc % 12;
	if ( acc <= LunarCal[y].BaseDays ) {
		y--;
		LunarYear = SolarYear - 1;
		leap = GetLeap( LunarYear );
		sm += 12;
		acc = SolarDays[leap*14 + sm] + SolarDate;
	 }
	else
		LunarYear = SolarYear;
			l1 = LunarCal[y].BaseDays;
	for ( var i=0; i<13; i++ ) {
		l2 = l1 + LunarCal[y].MonthDays[i] + 29;
		if ( acc <= l2 ) break;
		l1 = l2;
	 }
	LunarMonth = i + 1;
	LunarDate = acc - l1;
	im = LunarCal[y].Intercalation;
	if ( im != 0 && LunarMonth > im ) {
		LunarMonth--;
		if ( LunarMonth == im ) LunarMonth = -im;
	 }
	if ( LunarMonth > 12 ) LunarMonth -= 12;
 	today=new Date();
        function initArray(){
                         this.length=initArray.arguments.length;
                         for(var i=0;i<this.length;i++)
                         this[i+1]=initArray.arguments[i]; }
       var d=new initArray("星期日","星期一","星期二","星期三","星期四","星期五","星期六");
	   var dateView = (today.getMonth()+1)+"月"+today.getDate()+"日"+d[today.getDay()+1];
	   var mdateView = "农历"+(LunarMonth<0?monthsCH[Math.abs(LunarMonth)-1]:monthCH[LunarMonth-1])+dayCH[LunarDate-1];
	/*document.getElementById("date").innerHTML= dateView;
	document.getElementById("date").title = dateView;
	document.getElementById("mdate").innerHTML = mdateView;
	document.getElementById("mdate").title = mdateView;*/
}
 /* 求此民國年是否為閏年, 返回 0 為平年, 1 為閏年 */
function GetLeap( year )
 {
   if ( year % 400 == 0 )
     return 1;
   else if ( year % 100 == 0 )
     return 0;
   else if ( year % 4 == 0 )
     return 1;
   else
     return 0;
 }
function tagLunarCal( d, i, w, k, m1, m2, m3, m4, m5, m6, m7, m8, m9, m10, m11, m12, m13) {
 this.BaseDays = d;         /* 到民國 1 月 1 日到農曆正月初一的累積日數 */
 this.Intercalation = i;    /* 閏月月份. 0==此年沒有閏月 */
 this.BaseWeekday = w;      /* 此年民國 1 月 1 日為星期幾再減 1 */
 this.BaseKanChih = k;      /* 此年民國 1 月 1 日之干支序號減 1 */
 this.MonthDays = [ m1, m2, m3, m4, m5, m6, m7, m8, m9, m10, m11, m12, m13 ]; /* 此農曆年每月之大小, 0==小月(29日), 1==大月(30日) */
}
/**
 * 多个字段验证
 * 
 * @param formId
 * @return
 */
function validationMutityEngine(formId){
	var result = true;
    $('#' + formId +' tr td input').each(function() {
	    var validationClass = $(this).attr('class');
	    if(validationClass.indexOf('validate')>-1){
		    var idName = $(this).attr('id');
		    if($.validationEngine.loadValidation("#" + idName))
				result = false;
	    }
    });
    $('#' + formId +' tr td textarea').each(function() {
	    var validationClass = $(this).attr('class');
	    if(validationClass.indexOf('validate')>-1){
		    var idName = $(this).attr('id');
		    if($.validationEngine.loadValidation("#" + idName))
				result = false;
	    }
    });
	return result;

}
/**
 * 将form表单的所有text,select,textarea组件设置成不可编辑
 * 
 * @param formId
 * @return
 */
function attrDisabledByFormId(formId){
   $('#' + formId +' tr td input').each(function() {
	   $(this).attr('disabled', 'disabled');
   });
   $('#' + formId +' tr td select').each(function() {
	   $(this).attr('disabled', 'disabled');
   });
   $('#' + formId +' tr td textarea').each(function() {
	   $(this).attr('disabled', 'disabled');
   });

}
/**
 * 将form表单的所有text,select,textarea组件设置成可编辑
 * 
 * @param formId
 * @return
 */
function removeAttrDisabledByFormId(formId){
   $('#' + formId +' tr td input').each(function() {
	   $(this).removeAttr('disabled');
   });
   $('#' + formId +' tr td select').each(function() {
	   $(this).removeAttr('disabled');
   });
   $('#' + formId +' tr td textarea').each(function() {
	   $(this).removeAttr('disabled');
   });

}
/**
 * 将form表单的所有text,select,textarea组件的值设置成空
 * 
 * @param formId
 * @return
 */
function setFormNullByFormId(formId){
   $('#' + formId +' tr td input[type=text]').each(function() {
	   $(this).val('');
   });
   $('#' + formId +' tr td input[type=hidden]').each(function() {
	   var idName = $(this).attr('name');
	   if('id'==idName)
		   $(this).val('');
   });
   $('#' + formId +' tr td select').each(function() {
	   $(this).val('');
   });
   $('#' + formId +' tr td textarea').each(function() {
	   $(this).val('');
   });

}
/**
 * 将form表单的所有text,select,textarea组件的值根据jsonData值设置
 * 
 * @param formId
 * @return
 */
function setFormJsonDataByFormId(formId, jsonData){
   $('#' + formId +' tr td input[type!=radio]').each(function() {
	   var idName = $(this).attr('name');
	   if($(this).attr("type")=="text" && (jsonData[idName]=="null" || jsonData[idName]==null)){
		   $(this).val("");
	   }else{
		   $(this).val(jsonData[idName]);
	   }
   });
   $('#' + formId +' tr td select').each(function() {
	   var idName = $(this).attr('name');
	   $(this).val(jsonData[idName]);
   });

   $('#' + formId +' tr td textarea').each(function() {
	   var idName = $(this).attr('name');
	   if(jsonData[idName]=="null" || jsonData[idName]==null){
		   $(this).val("");
	   }else{
		   $(this).val(jsonData[idName]);
	   }
   });
   $('#' + formId +' input[type=radio]"').each(function (){
	   var name = $(this).attr('name');
	   if($(this).val()==jsonData[name]){
		   $(this).attr('checked',true);
	   }
	   //$(this).attr('checked',jsonData[name]);
   });
}

/**
 * 判断input只能为空 或数字
 * @param e
 * @returns {Boolean}
 */
function isshuzi(str){
   var reg =/^([1-9]\d*|\d+\.\d+)$/;
	return reg.test(str);
}

//处理键盘事件 禁止后退键（Backspace）密码或单行、多行文本框除外  
function forbidBackSpace(e) {  
    var ev = e || window.event; //获取event对象   
    var obj = ev.target || ev.srcElement; //获取事件源   
    var t = obj.type || obj.getAttribute('type'); //获取事件源类型   
    //获取作为判断条件的事件类型   
    var vReadOnly = obj.readOnly;  
    var vDisabled = obj.disabled;  
    //处理undefined值情况   
    vReadOnly = (vReadOnly == undefined) ? false : vReadOnly;  
    vDisabled = (vDisabled == undefined) ? true : vDisabled;  
    //当敲Backspace键时，事件源类型为密码或单行、多行文本的，   
    //并且readOnly属性为true或disabled属性为true的，则退格键失效   
    //var flag1 = ev.keyCode == 8 || (t == "password" || t == "text" || t == "textarea") || (vReadOnly == true || vDisabled == true);  
    //当敲Backspace键时，事件源类型非密码或单行、多行文本的，则退格键失效   
   // var flag2 = ev.keyCode == 8 || t != "password" || t != "text" || t != "textarea";  
    //判断   
    if (ev.keyCode==116 ||ev.keyCode==13) return false;  
}  
//禁止后退键 作用于Firefox、Opera  
document.onkeypress = forbidBackSpace;  
//禁止后退键  作用于IE、Chrome  
document.onkeydown = forbidBackSpace; 
